// 1047. 删除字符串中的所有相邻重复项
// 给出由小写字母组成的字符串 S，重复项删除操作会选择两个相邻且相同的字母，并删除它们。

// 在 S 上反复执行重复项删除操作，直到无法继续删除。

// 在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。
// 输入："abbaca"
// 输出："ca"
// 思路：循环遍历，如果栈的上一个与新要加进来的那个相等，就把栈顶那个删除
/**
 * @param {string} s
 * @return {string}
 */
 var removeDuplicates = function(s) {
    let stack=[];
    for(let x of s){
        if(stack.length&&stack[stack.length-1]===x){
            stack.pop();
        }else
            stack.push(x);
    }
    return stack.join('');
};